Variable depth of field scanning and lighting devices and methods

ABSTRACT

Various embodiments herein each include at least one of systems, methods, devices, barcode scanners, and software for variable depth of field scanning and lighting devices and methods. One such embodiment includes adjusting variable lenses on each of a plurality of barcode scanner scan-field lighting elements to a first depth of field and capturing a number of first images with a camera of a barcode scanner at the first depth of field. The method of this embodiment then outputs at least one of the number of the first images to a barcode reading process. This example method may then continue by adjusting the variable lenses of each of the plurality of barcode scanner scan-field lighting elements to a second depth of field, capturing a number of second images with the camera of the barcode scanner at the second depth of field, and then outputting at least one of the number of the second images to the barcode reading process. The adjusting, capturing, and outputting may then be repeated again in some embodiments for a third depth of field, a fourth depth of field, and onward, depending on the number of depths of field in a particular embodiment.

BACKGROUND INFORMATION

Barcode scanners are commonly at point of sale (POS) terminals to scanbarcodes of products to be purchased. Barcode scanners are also deployedfor other purposes, such as at kiosks to scan products for pricechecking, transportation check-in and boarding kiosks and terminals, andthe like. Quickness and accuracy of scanning are often important barcodescanner characteristics. Factors that affect the speed and accuracy ofbarcode scanners include illumination of a scan field, clarity of animage, and distance of an item presented for scanning from the scanner.Current barcode scanners have fixed camera lenses for only a singledepth of field and lighting, which may sometimes be altered inbrightness, cannot be altered in distance it is focused.

SUMMARY

Various embodiments herein each include at least one of systems,methods, devices, barcode scanners, and software for variable depth offield scanning and lighting devices and methods. One such embodimentincludes adjusting variable lenses on each of a plurality of barcodescanner scan-field lighting elements to a first depth of field andcapturing a number of first images with a camera of a barcode scanner atthe first depth of field. The method of this embodiment then outputs atleast one of the number of the first images to a barcode readingprocess. This example method may then continue by adjusting the variablelenses of each of the plurality of barcode scanner scan-field lightingelements to a second depth of field, capturing a number of second imageswith the camera of the barcode scanner at the second depth of field, andthen outputting at least one of the number of the second images to thebarcode reading process. The adjusting, capturing, and outputting maythen be repeated again in some embodiments for a third depth of field, afourth depth of field, and onward, depending on the number of depths offield in a particular embodiment. Further, the adjusting may include notonly the lighting arrays to illuminate at a particular depth of field,but also a lens on the camera to that same depth of field in asynchronous manner.

Another method embodiment includes determining a distance from a knownpoint to an item presented for scanning by a barcode scanner andadjusting variable lenses on each of a plurality of barcode scannerscan-field lighting elements based on the determined distance. A lens ona camera may also be adjusted in some embodiments to enable the camerato capture images at the same depth of field.

A further embodiment is in the form of a barcode scanner. The barcodescanner includes at least one camera and at least one scan field lightarray. Each scan field light array is arranged to illuminate a scanfield of one of the cameras of the at least one camera, the lightingelements of each scan field light array including variable lenses thatfocus light of the lighting elements at variable depths of field. Thebarcode scanner further includes a processor, a memory device, and abarcode reading process stored in the memory that is executable by theprocessor. Additional instructions are stored on the memory device andare executable by the processor to independently perform data processingactivities with regard to each of the scan field lighting arrays. Thedata processing activities in some embodiments include adjusting thevariable lenses on each lighting element of at least one scan fieldlighting array to a first depth of field, capturing a number of firstimages with at least one camera at the first depth of field, andoutputting at least one of the first images to the barcode readingprocess. The adjusting, capturing, and outputting may then be repeated anumber of time equal to a number of depth of field to be considered inscanning according to the specifics of a particular embodiment. The dataprocessing activities may then be restarted.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating components of a checkout station havinga scanner, according to an example embodiment.

FIG. 2 is a scanner diagram, according to an example embodiment.

FIG. 3 is a scanner diagram, according to an example embodiment.

FIG. 4 illustrates three depths of field from a camera, according to anexample embodiment.

FIG. 5 is a block diagram of a computing device, according to an exampleembodiment.

FIG. 6 is a block flow diagram of a method, according to an exampleembodiment.

FIG. 7 is a block flow diagram of a method, according to an exampleembodiment.

DETAILED DESCRIPTION

Various embodiments herein each include at least one of systems,methods, devices, barcode scanners, and software for variable depth offield scanning and lighting devices and methods. These embodimentsgenerally increase the overall performance of barcode imaging scannersby synchronizing camera lens depth of field and illumination intensity.This can be achieved in some embodiments by using variable lenstechnology, such as a liquid lens available from Varioptic of Lyon,France. Some embodiments use one or more distance sensors while otherembodiments may use preset distances the focus of the camera depth offield (DOF) and focused intensity of the illumination that changesimultaneously to achieve illumination synchronized with camera DOF.

One such preset distance embodiment is in the form of a method. In thismethod the DOF and Illumination change at preset distances from scanningelements of a scanner, such as a 7879 bioptic scanner available from NCRCorporation of Duluth, Ga. Three preset distances may be utilized andreferred to as Near. Mid, and Far. The DOF will change as the frames onthe camera changes. The change in DOF together with the Illumination issynchronized in such embodiments with the frames rate of the camera. Forexample, each second, 30 frames can be captured by some cameras. In suchembodiments having a 30 frames per second capture rate, 10/30 frames maybe dedicated to the near DOF and illumination, 10/30 frames may bededicated to Mid DOF and illumination, 10/30 frames may be dedicated forFar. The sequence of change in DOF and illumination is generallyconstant. 1000 millisecond=1 second, 1000 milliseconds/30 (frame persecond), the frame will change at 33.33 seconds. On the first and secondframes in such embodiments, the DOF may be set for the near DOF andillumination, on the third and fourth frame the DOF may be set for theMid DOF and illumination, on the fifth and sixth frame the DOF may beset for the Far DOF and illumination. The cycle will continue untilone-second is reached which has 30 frames. The change in DOF andillumination are controlled, in some embodiments, by a change in voltageto the lens which enables the lens to change in shape or arrangementthus resulting in different DOF and illumination.

Another method embodiment utilizes a distance sensor or determinationprocess based on image processing of images captured from differentangles with regard to an item presented for scanning. In some suchembodiments, the change in DOF and illumination relies on a distancesensor (acoustic/sonar, camera, or any other sensor) to determine theposition of the object presented for scanning. The use of distancesensor may dictate the change in DOF and illumination. In this methodthe frame rate is not compromised since it will be fixed at 30 fps. TheDOF and illumination in such embodiments automatically adjust as theitems are place anywhere on the scan zone.

These and other embodiments are described herein with reference to thefigures.

In the following detailed description, reference is made to theaccompanying drawings that form a part hereof, and in which is shown byway of illustration specific embodiments in which the inventive subjectmatter may be practiced. These embodiments are described in sufficientdetail to enable those skilled in the art to practice them, and it is tobe understood that other embodiments may be utilized and thatstructural, logical, and electrical changes may be made withoutdeparting from the scope of the inventive subject matter. Suchembodiments of the inventive subject matter may be referred to,individually and/or collectively, herein by the term “invention” merelyfor convenience and without intending to voluntarily limit the scope ofthis application to any single invention or inventive concept if morethan one is in fact disclosed.

The following description is, therefore, not to be taken in a limitedsense, and the scope of the inventive subject matter is defined by theappended claims.

The functions or algorithms described herein are implemented inhardware, software or a combination of software and hardware in oneembodiment. The software comprises computer executable instructionsstored on computer readable media such as memory or other type ofstorage devices. Further, described functions may correspond to modules,which may be software, hardware, firmware, or any combination thereof.Multiple functions are performed in one or more modules as desired, andthe embodiments described are merely examples. The software is executedon a digital signal processor. ASIC, microprocessor, or other type ofprocessor operating on a system, such as a personal computer, server, arouter, or other device capable of processing data including networkinterconnection devices.

Some embodiments implement the functions in two or more specificinterconnected hardware modules or devices with related control and datasignals communicated between and through the modules, or as portions ofan application-specific integrated circuit. Thus, the exemplary processflow is applicable to software, firmware, and hardware implementations.

FIG. 1 is a diagram illustrating components of a checkout station 100having a scanner 108, according to an example embodiment. It is to benoted that the checkout station 100 is shown schematically in greatlysimplified form, with example components relevant to understandingvarious embodiments herein. The same situation may be true for the othervarious components of the checkout station 100. Note that the checkoutstation 100 may include more or fewer components in some embodiments.

Furthermore, the various components included in the FIG. 1 asillustrated and arranged are provided for illustration purposes only. Itis to be noted that other arrangements with more or fewer components arepossible without departing from the contributions herein, in particularwith regard to automatic and remote scanner configuration.

Moreover, the methods and scanner presented herein and below may includeall or some combination of the components shown in the context of thecheckout station 100. Further, although a checkout station 100 isillustrated as including a scanner 108, the scanner 108 may be astandalone element or an element of other systems, devices, andterminals in other embodiments. Examples of other terminal-types thatmay include a scanner 108 are self-service terminals (SSTs), clerkoperated and self-service library checkout stations, time-keepingterminals, and the like.

The methods of some embodiments are programmed as executableinstructions in memory and/or non-transitory computer-readable storagemedia and executed on one or more processors associated with thecomponents and devices herein. Some such components may be firmware.

The checkout station 100 includes one or more POS displays 102 thatpresent information of a POS system 104 coupled to the one or more POSdisplays. Information presented by the one or more POS displays includesinformation relevant in a retail context and with regard to operation ofthe checkout station. The checkout station 100 also includes the scanner108.

The scanner 108 may be referred to as a barcode scanner as that is thetask most commonly associated with such devices. During operation of thecheckout station 100, items are placed within a scan field of thescanner 108. One or more scanning modules 118 of the scanner 108, suchas a camera, which may include a variable lens in some embodiments, alaser scanner, or both, then scan a barcode of an item presented forscanning and information read therefrom is communicated to the POSsystem 104. The POS system 104 then uses that data to identify the itempresented within the scan field and performs an additional function. Theadditional function may include a price lookup and addition of the itemto a list of items to be purchased, which may be presented on the one ormore POS displays 102.

The scanner 108 may include one or more scan fields, such as two scanfields of bi-optic scanners that are commonly seen in grocery anddiscount retail outlets. In addition to the scanning module 118, thescanner 108 may include various other components. The various othercomponents may include an integrated scale 110 such as may be used in agrocery outlet to weigh produce and one or both of a speaker 112 anddisplay lighting 116 to output audio and visual signals such as signalsof (un)successful scans. The scanner 108 may also include one or morescan field lighting modules 120 that may be turned on and off andadjusted based on a detected presence of an item to be scanned, adistance from a scanning surface of an item presented for scanning. Insome embodiments, lighting elements of the scan field lighting modules120 may include variable lenses to focus light at certain depths offield based on a programmatic cycle through specific depths, measured orapproximated distances from a camera to an item presented for scanningwithin a scan field, and the like.

In some embodiments, the scanner 108 includes a distance determiningmodule 119 and a lighting controller 121. As illustrated, the distancedetermining module 119 and the lighting controller 121 are illustratedas hardware devices, such as firmware, ASICs. and the like. However, inother embodiments, one or both of the distance determining module 119and the lighting controller 121 may be present in software 130 stored inthe memory and be executed by the processor 122.

The distance determining module 119 determines a distance between ascanning surface and an item presented for scanning. In someembodiments, the distance determining module includes an ultrasonicdistance measuring device as are commonly available as integratedcircuits. In some embodiments where the scanner 108 is a bi-opticscanner, there may be two distance determining modules 119, present onor in proximity to each of the two scanning surface. The distancedetermining module 119 determines the distance in such embodiments andprovides the distance to the lighting controller 121.

In other embodiments, the distance determining module 119 may determinea distance between a scanning surface and an item presented for scanningbased on where a surface of an item presented for scanning appears in animage received from the scanning module 118 with regard to one or moreknown distances within a field of view of a camera of the scanningmodule 118. For example, when the scanner 108 is a bi-optic scanner, thescanner 108 typically includes two scanning surfaces that areapproximately perpendicular to one another—one scanning surface orientedvertically and the other horizontally. An image captured by a scanningmodule 118 of the horizontal scanning surface is processed in suchembodiments to determine a distance of a surface of an item presentedfor scanning that is sufficiently parallel to the vertical scanningsurface to be scanned by the scanning module 118 of the verticalscanning surface. An edge of the surface of the item presented forscanning by the vertical scanning surface may be detected by the imageprocessing and a location of the edge is determined with regard to oneor more known distance locations within the field of view of thescanning module 118 camera of the horizontal scanning surface. A similarprocess is also performed by the distance determining module 119 withregard to determining a distance between the item presented for scanningand a horizontal scanning surface except for the image processing isperformed with regard to an image captured by a scanning module 118camera of the vertical scanning surface.

In some embodiments, a bi-optic scanner may include two distancedetermining modules 119—one for each scanning surface. In otherembodiments, a single distance determining module 119 may be sharedbetween the two scanning surfaces.

FIG. 2 is a scanner 200 diagram, according to an example embodiment. Theillustrated scanner 200 is a an example of a hi-optic scanner on whichimage processing based distance determination is performed by a distancedetermining module, such as the distance determining module 119discussed above with regard to FIG. 1. The scanner 200 is illustratedwith regard to performing image processing based distance determinationto determine a distance between a vertical scanning surface and asurface of an item presented for scanning based on an image captured bya camera 202 from the direction of the horizontal scanning surface.However, the same processing can be performed to determine a distancebetween the horizontal scanning surface and a surface of the itempresented for scanning, although the image would be capture from adirection of the vertical scanning surface.

An image captured by the horizontal camera 204 of a field of view 206.The camera 204 field of view 206 includes a known reference point 208.The distance may be measured distance that may be used identify alighting setting for one or more of the lights 210, 212. However, insome embodiments, the distance between the scanning surface and the itempresented for scanning is determined as whether it is less or greaterthan the known reference point 208. As illustrated in FIG. 2, the itemis greater than the known reference point 208. This information may thenbe used to identify a lighting setting, or be transmitted to anothermodule to make the determination. Some embodiments may include more thanone known reference point 208. In some further embodiments, a knownreference point is a distance threshold range which may indicate each oftwo or more lights or lighting arrays are to be illuminated.

FIG. 3 is a scanner 300 diagram, according to an example embodiment. Thescanner 300 is provided for purposes of illustrating an embodimentincluding an ultrasonic distance measuring device 302. Although thescanner 300 is illustrated as being a bi-optic scanner, the scanner 300may instead have only a single scanning surface. The illustratedbi-optic scanner 300 includes only one ultrasonic distance measuringdevice 302. However, some embodiments may include an ultrasonic distancemeasuring device 302 on each of the scanning surfaces.

The ultrasonic distance measuring device 302 measures a distance betweena scanning surface and the item 306 presented for scanning. The measureddistance may then be provided to a lighting controller to set and adjustscan field lighting.

FIG. 4 illustrates three depths of field from a camera, according to anexample embodiment. The three illustrations include presentment ofobjects at positions 1, 2, and 3. Each object is illustrated at adifferent distance from a camera. The cone coming from each illustratedcamera indicates the field of view and the dark oval represents alocation distance where each respective object should be placed forscanning at a proper depth of field for a given setting or measurement.

FIG. 5 is a block diagram of a computing device, according to an exampleembodiment. In one embodiment, multiple such computer systems areutilized in a distributed network to implement multiple components in atransaction based environment. An object-oriented, service-oriented, orother architecture may be used to implement such functions andcommunicate between the multiple systems and components. One examplecomputing device in the form of a computer 510, may include a processingunit 502, memory 504, removable storage 512, and non-removable storage514. Memory 504 may include volatile memory 506 and non-volatile memory508. Computer 510 may include—or have access to a computing environmentthat includes—a variety of computer-readable media, such as volatilememory 506 and non-volatile memory 508, removable storage 512 andnon-removable storage 514. Computer storage includes random accessmemory (RAM), read only memory (ROM), erasable programmable read-onlymemory (EPROM) & electrically erasable programmable read-only memory(EEPROM), flash memory or other memory technologies, compact discread-only memory (CD ROM), Digital Versatile Disks (DVD) or otheroptical disk storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or any other medium capableof storing computer-readable instructions. Computer 510 may include orhave access to a computing environment that includes input 516, output518, and a communication connection 520. The computer may operate in anetworked environment using a communication connection to connect to oneor more remote computers, such as database servers. The remote computermay include a personal computer (PC), server, router, network PC, a peerdevice or other common network node, or the like. The communicationconnection may include a Local Area Network (LAN), a Wide Area Network(WAN) or other networks.

Computer-readable instructions stored on a computer-readable medium areexecutable by the processing unit 502 of the computer 510. A hard drive,CD-ROM, and RAM are some examples of articles including a non-transitorycomputer-readable medium. For example, a computer program 525 capable ofproviding a generic technique to perform access control check for dataaccess and/or for doing an operation on one of the servers in acomponent object model (COM) based system according to the teachings ofthe present invention may be included on a CD-ROM and loaded from theCD-ROM to a hard drive. The computer-readable instructions allowcomputer 510 to provide generic access controls in a COM based computernetwork system having multiple users and servers.

FIG. 6 is a block flow diagram of a method 600, according to an exampleembodiment. The method 600 is an example of a method that may beperformed on a scanner 108 of FIG. 1.

The method 600 includes determining 602 a distance from a known point toan item presented for scanning by a barcode scanner adjusting 604variable lenses on each of a plurality of barcode scanner scan-fieldlighting elements based on the determined distance. In some embodiments,determining 602 the distance from a known point to an item presented forscanning by the barcode scanner includes measuring a distance from adistance sensor to the item presented for scanning. The distance may bemeasured in some embodiments by an acoustic/sonar device.

In some further embodiments, the barcode scanner is a bioptic imagingscanner including a first camera under a horizontal surface of thebarcode scanner and a second camera behind a vertical surface. In somesuch embodiments, the barcode scanner includes a horizontal scan fieldlighting array that illuminates a scan field of the first camera and avertical scan field lighting array that illuminates a scan field of thesecond camera. The determining 602 of the distance from a known point toan item presented for scanning by the barcode scanner in some of theseembodiments includes approximating a distance from the vertical surfaceto the item presented for scanning by processing an image captured bythe camera under the horizontal surface in view of image locations, eachimage location calibrated to a known distance. Further, determining 602the distance from a known point to an item presented for scanning by thebarcode scanner may further include approximating a distance from thehorizontal surface to the item presented for scanning by processing animage captured by the camera behind the vertical surface in view ofimage locations, each image location calibrated to a known distance.

The method 600 also typically includes capturing an image with thecamera and outputting the image to a barcode reading process of thebarcode scanner.

FIG. 7 is a block flow diagram of a method 700, according to an exampleembodiment. The method 700 includes adjusting 702 variable lenses oneach of a plurality of barcode scanner scan-field lighting elements to afirst depth of field, capturing 704 a number of first images with acamera of a barcode scanner at the first depth of field, and outputting706 at least one of the number of the first images to a barcode readingprocess. The method 700 further includes repeating the adjusting 708,714, capturing 710, 716, and outputting 712, 718 for each additionaldepth of field of the particular embodiment. Although the method 700 isillustrated and described with regard to three depths of field, otherembodiments may include only two depths of field and others may includefour or more. The method 700 may then restarts 720 to iterate theprocess and may continue to do so essentially indefinitely while adevice upon which the method 700 is executing is powered on. However, inother embodiments, the method 700 may be started and stoppedintermittently when no items are presented for scanning or a terminal orkiosk with which the scanner is deployed is in a sleep mode.

In some embodiments of the method 700, adjusting 702, 708, 714 thevariable lenses to each of the first, second, and third depths of fieldfurther includes adjusting a variable lens of the camera to the samerespective depth of field. The depths of field of the variable lensesmay be adjusted 702, 708, 714 in some embodiments by changing voltagesof electrical current respectively applied thereto. The voltages appliedto the variable lenses to adjust 702, 708, 714 the variable lenses tothe first, second, and third depths of field are identified in someembodiments based on data stored in a memory of the barcode scanner. Forexample, a lookup table may be stored in memory that provides a voltageassociated with a certain distance measurement or a fixed-depth of fieldsetting.

In some embodiments, the numbers of first, second, and third imagescaptured are equal. The numbers of first, second, and third images maybe set as a configuration setting based on a frame rate of the cameradivided by the number of depths of field at which images are captured.

In some embodiments of the method 700, the variable lenses are variablefocus lenses. The variable focus lenses in some embodiments are liquidlenses.

It will be readily understood to those skilled in the art that variousother changes in the details, material, and arrangements of the partsand method stages which have been described and illustrated in order toexplain the nature of the inventive subject matter may be made withoutdeparting from the principles and scope of the inventive subject matteras expressed in the subjoined claims.

What is claimed is:
 1. A method comprising: adjusting variable lenses oneach of a plurality of barcode scanner scan-field lighting elements to afirst depth of field; capturing a number of first images with a cameraof a barcode scanner at the first depth of field; outputting at leastone of the number of the first images to a barcode reading process;adjusting the variable lenses of each of the plurality of barcodescanner scan-field lighting elements to a second depth of field;capturing a number of second images with the camera of the barcodescanner at the second depth of field; outputting at least one of thenumber of the second images to the barcode reading process; adjustingvariable lenses on each of a plurality of barcode scanner scan-fieldlighting elements to a third depth of field; capturing a number of thirdimages with the camera of the barcode scanner at the third depth offield; outputting at least one of the number of the third images to thebarcode reading process; and restarting the method.
 2. The method ofclaim 1, wherein adjusting the variable lenses to each of the first,second, and third depths of field further includes adjusting a variablelens of the camera to the same respective depth of field.
 3. The methodof claim 1, wherein the depths of field of the variable lenses areadjusted by changing voltages of electrical current respectively appliedthereto.
 4. The method of claim 1, wherein the voltages applied to thevariable lenses to adjust the variable lenses to the first, second, andthird depths of field are identified based on data stored in a memory ofthe barcode scanner.
 5. The method of claim 1, wherein the numbers offirst, second, and third images are equal.
 6. The method of claim 5,wherein the numbers of first, second, and third images are set as aconfiguration setting based on a frame rate of the camera divided by thenumber of depths of field at which images are captured.
 7. The method ofclaim 1, wherein the variable lenses are variable focus lenses.
 8. Themethod of claim 7, wherein the variable focus lenses are liquid lenses.9. A barcode scanner comprising: at least one camera; at least one scanfield light array, each scan field light array to illuminate a scanfield of one of the cameras of the at least one camera, the lightingelements of each scan field light array including variable lenses thatfocus light of the lighting elements at variable depths of field; aprocessor, a memory device, and a barcode reading process stored in thememory that is executable by the processor; instructions stored on thememory device executable by the processor to independently perform dataprocessing activities with regard to each of the scan field lightingarrays, the data processing activities comprising: adjusting thevariable lenses on each lighting element of at least one scan fieldlighting array to a first depth of field; capturing a number of firstimages with at least one camera at the first depth of field; outputtingat least one of the first images to the barcode reading process;adjusting the variable lenses on each lighting element of at least onescan field lighting array to a second depth of field; capturing a numberof second images with at least one camera at the second depth of field;outputting at least one of the second images to the barcode readingprocess; adjusting the variable lenses on each lighting element of atleast one scan field lighting array to a third depth of field; capturinga number of third images with at least one camera at the third depth offield; outputting at least one of the third images to the barcodereading process; and restarting the data processing activities.
 10. Thebarcode scanner of claim 9, wherein the variable lenses are liquidlenses.
 11. The barcode scanner of claim 9, wherein adjusting thevariable lenses to each of the first, second, and third depths of fieldfurther includes adjusting a variable lens of at least one of the atleast one cameras to the same respective depth of field.
 12. The barcodescanner of claim 9, wherein the numbers of first, second, and thirdimages are set as a configuration setting stored in the memory based ona frame rate of the camera divided by the number of depths of field atwhich images are captured.